Mantener colores entre pipes

Descripcion

Como hacer que los colores se mantengan en un terminal al utilizar pipes (|)

Metodo

Cuando lanzamos un comando en un terminal y nos devuelve una salida con códigos de colores si hacemos un pipe (para filtrar con grep por ejemplo) los colores se pierden.

Para evitar esto muchos comandos tienen la opción --color=always, si por ejemplo queremos filtrar dmesg usando grep podemos hacerlo tal que asi:

dmesg --color=always | grep device

Lo mismo con el comando ls y el comando less, en este caso con less tambien podemos utilizar la opción -r para que haga una interpretación de los caracteres especiales:

ls -l --color=always | less -r

Con otros comandos como el scat no hace falta usar dicha opción:

scat index.html | less -r
Tags

Bash | colors | pipe